#include <iostream>


typedef struct LinkedNode{
    int val;
    LinkedNode * next;
    LinkedNode(int val): val(val), next(nullptr){};
}LinkedNode;

LinkedNode* createLinkList();

void printLinkList(LinkedNode * head);

LinkedNode* removeElements(LinkedNode* head, int val);

LinkedNode* removeElements2(LinkedNode* head, int val);

//递归实现
LinkedNode* removeElements3(LinkedNode* head, int val);

//实现链表翻转
LinkedNode* reverseList(LinkedNode* head);
